/**
    单向链表
    每一个节点都包含一个 data 和一个指向节点的指针
    功能：
    1.链表的初始化
    2.增加节点
    3.删除节点
    优点：
        播放，删除比较快
    缺点：
        查询比较慢

**/

#ifndef _XLIB_SINGLELIST_H_
#define _XLIB_SINGLELIST_H_

#include <string.h>
#include <memory.h>
#include <stdio.h>
#include <stdlib.h>

extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}


struct node {
    int num;
    struct node* next;
};

typedef struct node node;


//打印链表
void sl_print();

node* sl_get();

//增加节点
void sl_add(node* nd);

void sl_del(node* nd);


int lua_sl_add(lua_State* L);
int lua_sl_del(lua_State* L);

#endif